home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / bbsutils / allstat.arj / ALLSTAT.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-05-02  |  4KB  |  228 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     String   STRING001
  24.     String   STRING002
  25.     String   STRING003
  26.     String   STRING004
  27.     String   STRING005
  28.     String   STRING006
  29.     String   STRING007
  30.     String   STRING008
  31.     String   STRING009
  32.     String   STRING010
  33.     String   STRING011
  34.     String   STRING012
  35.     String   STRING013
  36.     String   STRING014
  37.     String   STRING015
  38.     String   STRING016
  39.     String   STRING017
  40.     String   STRING018
  41.     String   STRING019
  42.  
  43. ;------------------------------------------------------------------------------
  44.  
  45.     STRING001 = PPEPath() + "ALLSTAT"
  46.     STRING018 = PPEPath() + "LASTSTAT.TMP"
  47.     STRING019 = PPEPath() + "ALLSTAT.TMP"
  48.     STRING013 = Space(1)
  49.     STRING014 = Space(2)
  50.     INTEGER001 = 0
  51.     INTEGER002 = 0
  52.     INTEGER003 = 20
  53.     INTEGER004 = 500
  54.     If (TokCount() == 2) Then
  55.         INTEGER003 = GetToken()
  56.         INTEGER004 = GetToken()
  57.     Else
  58.         Log "Could not find Command line options! (ALLSTAT.PPE)", 1
  59.         End
  60.     Endif
  61.     GetUser
  62.     Newline
  63.     PrintLn "@X0ERunning ALLSTAT.PPE @X0A(c) Copyright 1994 @X0Bby A. Segura@X07"
  64.     Newlines 2
  65.     PrintLn "@X0AThanks for calling, @X0B@FIRST@!@X07"
  66.     Newline
  67.     If (CurSec() == 0) Goto LABEL004
  68.     STRING002 = Mixed(U_Name())
  69.     If (STRING002 == "SYSOP") Goto LABEL004
  70.     If (STRING002 == "Sysop") Goto LABEL004
  71.     If (STRING002 == "Al Segura") Goto LABEL004
  72.     If (STRING002 == "Bill Smith") Goto LABEL004
  73.     KbdChkOff
  74.     CdChkOff
  75.     DtrOff
  76.     Delay 18
  77.     DtrOn
  78.     STRING002 = "@X0B" + Left(STRING002, 21) + STRING013
  79.     STRING007 = "@X07" + Right(String(U_Logons()), 3) + STRING013
  80.     STRING008 = "@X0E" + Left(String(U_LDate()), 5)
  81.     STRING010 = "@X0C" + Left(String(Date()), 5) + STRING013
  82.     STRING003 = "@X0E" + Right(String(U_Ful()), 3) + STRING013
  83.     STRING004 = "@X0F" + Right(String(U_Fdl()), 3) + STRING013
  84.     STRING005 = "@X0A" + Right(String(U_MsgRd()), 5) + STRING013
  85.     STRING006 = "@X0B" + Right(String(U_MsgWr()), 3) + STRING014
  86.     STRING011 = "@X07" + Right(String(U_Stat(4)), 3) + STRING013
  87.     STRING012 = "@X0C" + Right(String(U_Stat(10)), 3) + STRING014
  88.     STRING015 = "@X0D" + Right(String(U_Stat(14)), 3) + STRING014
  89.     STRING016 = "@X0C" + Right(String(U_Stat(12)), 3) + STRING013
  90.     If (U_Sec < INTEGER003) STRING009 = "@X0A" + Right(String(U_Sec), 3) + STRING014
  91.     If (U_Sec >= INTEGER003) STRING009 = "@X0D" + Right(String(U_Sec), 3) + STRING014
  92.     STRING017 = STRING010 + STRING002 + STRING009 + STRING007 + STRING004 + STRING003 + STRING005 + STRING006 + STRING011 + STRING012 + STRING015 + STRING016 + STRING008
  93.     FCreate 1, STRING018, 2, 0
  94.     FPutLn 1, STRING017
  95.     FClose 1
  96.     If (Exist(STRING019)) Goto LABEL001
  97.     FCreate 1, STRING019, 2, 0
  98.     FClose 1
  99.     :LABEL001
  100.     Append STRING019, STRING018
  101.     STRING017 = ""
  102.     FOpen 2, STRING018, 0, 0
  103.     FCreate 1, STRING001, 1, 0
  104.     :LABEL002
  105.     If (Ferr(2)) Goto LABEL003
  106.     FGet 2, STRING017
  107.     Select Case (INTEGER001)
  108.         Case 0
  109.             FPutLn 1, "@CLS@"
  110.             FPutLn 1, "@X0D..................ALLSTAT.PPE @X0C(c) COPYRIGHT 1994 @X0Bby Al Segura@X0D..................@X07"
  111.             FPutLn 1, "@X07Date  User                  Sec TOTAL Files  MESSAGES# Cmnt SECURITY Down Last "
  112.             FPutLn 1, "@X07 On   Name                  Lvl Call Dwn  Up  Read Wrt Left Vio Pwrd Limt  On  "
  113.             FPutLn 1, "@X07-------------------------------------------------------------------------------"
  114.             FPutLn 1, STRING017
  115.         Case 14
  116.             FPutLn 1, STRING017
  117.             FPutLn 1, "@X07==============================================================================="
  118.             FPutLn 1, "@MORE@"
  119.             INTEGER001 = -1
  120.         Case Else
  121.             FPutLn 1, STRING017
  122.     End Select
  123.     Inc INTEGER001
  124.     Inc INTEGER002
  125.     If (INTEGER002 >= INTEGER004) Goto LABEL003
  126.     Goto LABEL002
  127.     :LABEL003
  128.     If (INTEGER001 <> 0) Then
  129.         FPutLn 1, "@X07==============================================================================="
  130.         FPutLn 1, "@MORE@"
  131.     Endif
  132.     FClose 1
  133.     FClose 2
  134.     Delete STRING019
  135.     Rename STRING018, STRING019
  136.     CdChkOn
  137.     KbdChkOn
  138.     SPrintLn "ALLSTAT.PPE Completed Successfully!"
  139.     End
  140.     :LABEL004
  141.     End
  142.  
  143. ;------------------------------------------------------------------------------
  144. ;
  145. ; Usage report (before postprocessing)
  146. ;
  147. ; ■ Statements used :
  148. ;
  149. ;    3       End
  150. ;    16      Goto 
  151. ;    29      Let 
  152. ;    2       PrintLn 
  153. ;    14      If 
  154. ;    3       FCreate 
  155. ;    1       FOpen 
  156. ;    4       FClose 
  157. ;    1       FGet 
  158. ;    13      FPutLn 
  159. ;    1       GetUser
  160. ;    1       Delete 
  161. ;    1       Log 
  162. ;    1       DtrOn
  163. ;    1       DtrOff
  164. ;    1       CdChkOn
  165. ;    1       CdChkOff
  166. ;    1       Delay 
  167. ;    2       Inc 
  168. ;    2       Newline
  169. ;    1       Newlines 
  170. ;    1       KbdChkOn
  171. ;    1       KbdChkOff
  172. ;    1       SPrintLn 
  173. ;    1       Rename 
  174. ;    1       Append 
  175. ;
  176. ;
  177. ; ■ Functions used :
  178. ;
  179. ;    1       -
  180. ;    42      +
  181. ;    8       ==
  182. ;    1       <>
  183. ;    1       <
  184. ;    2       >=
  185. ;    6       !
  186. ;    3       Left()
  187. ;    11      Right()
  188. ;    2       Space()
  189. ;    1       Ferr()
  190. ;    1       Date()
  191. ;    1       U_Name()
  192. ;    1       U_LDate()
  193. ;    1       U_Logons()
  194. ;    1       U_Ful()
  195. ;    1       U_Fdl()
  196. ;    13      String()
  197. ;    3       PPEPath()
  198. ;    1       U_MsgRd()
  199. ;    1       U_MsgWr()
  200. ;    1       CurSec()
  201. ;    2       GetToken()
  202. ;    1       Exist()
  203. ;    4       U_Stat()
  204. ;    1       TokCount()
  205. ;    1       Mixed()
  206. ;
  207. ;------------------------------------------------------------------------------
  208. ;
  209. ; Analysis flags : B
  210. ;
  211. ; B - Brute hangup ■ 1
  212. ;     Program hangup without notification. This may be a good way to
  213. ;     disconnect a user, but if used randomly, may be very nasty
  214. ;     ■ Search for : HANGUP, DTROFF
  215. ;
  216. ;------------------------------------------------------------------------------
  217. ;
  218. ; Postprocessing report
  219. ;
  220. ;    0       For/Next
  221. ;    0       While/EndWhile
  222. ;    2       If/Then or If/Then/Else
  223. ;    1       Select Case
  224. ;
  225. ;------------------------------------------------------------------------------
  226. ;                 AEGiS Corp - Break the routines, code against the machines!
  227. ;------------------------------------------------------------------------------
  228.